perm filename AAAI.2[AM,DBL] blob
sn#528281 filedate 1980-08-13 generic text, type C, neo UTF8
COMMENT ā VALID 00003 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00002 00002 TALK ONE: REPRESENTATION OF KNOWLEDGE
C00006 00003 TALK TWO: CLOSING REMARKS
C00008 ENDMK
Cā;
TALK ONE: REPRESENTATION OF KNOWLEDGE
Basic Idea: There are different types of knowledge, and different uses
for knowledge, and the choice of representation depends upon these considerations.
OUTLINE
The dramatic effects of change of representation
Trade-Offs, alternatives; ease of changability
The historical development of programming languages for representing knowledge
Symbol manipulation lang.
AI planning languages
AI representation languages
Focus on Semantic Nets
Focus on Frame-based Systems
Focus on Production Rule Systems
Uniting these; current research; current practice.
Issues: a lang vs its interpreter; lang/meaning/KB; repr vs inferencing upon it.
THE DRAMATIC EFFECTS OF CHANGE OF REPRESENTATION
Gelernter Geom. Program
Proving theorems represented as logical wffs
The tremendous gain from "drawing the diagram", from analogic models
Noticing equal angles and lengths, which become lemmata.
Amarel M&C
Size of the initial problem (with all 6 indivs. distinguished)
Table of reductions as the repr. is changed
Final Z-graphical repr. gives the soln by inspection
Data Structures
In choosing a data structure to hold a list, if insertions and deletions
will be frequent, a linked list is much more efficient than an array.
HISTORY
late 50's: Symbol Processing Languages (IPL LISP, SmallTalk)
Automatic Storage Management (GC)
Automatic Symbol Management (Atoms)
Associative Lookup (Property lists)
Recursive control (Stack)
late 60's: AI Planning Languages (QA4, Planner, Conniver)
Worlds (contexts)
n-ary propositions (assertioaal database)
Smart indexing (pattern matching)
Data-driven control (demons, goal-directed invocation)
late 70's: Representation Languages (KRL, FRL, Units, KLONE, OWL)
Modularization of knowledge (units, slots, prototypes)
Structural Abstraction (hierarchy of knowledge)
Automatic Inferencing (inheritance, smart pattern-matching)
Procedural attachment (triggers and traps)
Multiprocessing (agendae, asynchronous process sprout/prune)
TALK TWO: CLOSING REMARKS
Basic Idea: KE expands the useful roles of computers.
We can easily build computer programs to perform some tasks;
by employing knowledge engineering techniques, the number and kind of
such "doable" tasks is increased.
Current Applications and Research Projects
Survey
esp: High impact applications
Role of the computer
Multiple roles (multiple uses of a KB)
Paper recorder; automaton calculator;
algorithmic computer; technical assistant;
equastatus co-worker; creative superior.
Starting a project
Deliverables vs Journal articles (state of the art; limits)
Hiring some knowledge engineer(s) (where, how, how many; consultants)
Choosing a role for the computer to play
Equipment required, resources in personnel, time, money, etc.
Managing the project
timetables, expectations, measuring progress
More Information
An annotated guide to the literature of AI in general and KE in particular
Sources for tech reports, thesis talks, consultants
Sending employees to learn more (MSAI, AAAI, IJCAI, Grad Spec/Honors Coop,
Industrial Affiliates Program, joint research)
The verdict
Discussion / Questions (on any of today's material)